๐ WAS(Web Application Server)
โ
Servlet์ ์คํํ๊ณ ๊ด๋ฆฌํ๋ ์๋ฒ (Servlet ์ปจํ
์ด๋ ์ญํ )
โ
HTTP ์์ฒญ์ ์ฒ๋ฆฌํ๊ณ , Servlet์ ํตํด ๋์ ์ธ ์น ํ์ด์ง๋ฅผ ์์ฑํ์ฌ ํด๋ผ์ด์ธํธ์๊ฒ ์๋ต
โ
๋ํ์ ์ธ WAS: Apache Tomcat
๋ฐฐ๊ฒฝ
๐น ๊ธฐ์กด ์๋ฃจ์
์ ํ๊ณ
๊ณผ๊ฑฐ์๋ ๋จ์ํ HTML, CSS, ์ด๋ฏธ์ง ๋ฑ์ ์ ์ ํ์ผ์ ์ ๊ณตํ๋ ์น ์๋ฒ(Apache, Nginx) ๋ง ์กด์ฌํ๋ค.
์น์ด ๋ฐ์ ํจ์ ๋ฐ๋ผ ์ฌ์ฉ์์ ์์ฒญ์ ๋ฐ๋ฅธ ๋์ ์ธ ์ฒ๋ฆฌ๊ฐ ํ์ํด์ก๋ค.
๐น ๊ธฐ์กด ์๋ฃจ์ ์ ํ๊ณ ํด๊ฒฐ
- WAS = ์น ์๋ฒ + ์น ์ปจํ ์ด๋
- ์ ์ ์ปจํ ์ธ ๋ ์น ์๋ฒ๊ฐ ์ ๊ณตํ๊ณ , ๋์ ์ปจํ ์ธ ๋ ์น ์ปจํ ์ด๋๊ฐ ์ ๊ณต
- ์น ์ปจํ ์ด๋๋ ์๋ธ๋ฆฟ์ ์คํํ๊ณ ๊ด๋ฆฌ
- ์น ์ปจํ ์ด๋์์ ๋์ ์ธ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ์ญํ ์ ํ๋ ๊ฒ์ด ์๋ธ๋ฆฟ
๋์ ํ๋ฆ
- ํด๋ผ์ด์ธํธ โ HTTP ์์ฒญ (GET /hello)
- WAS โ ์์ฒญ์ ๋ฐ์ Servlet ์คํ (HelloServlet)
- Servlet โ ๋์ ์๋ต์ ์์ฑํ์ฌ ์๋ต (Hello, Servlet!)
- WAS โ ํด๋ผ์ด์ธํธ์๊ฒ ์ต์ข ์๋ต ์ ๋ฌ
๐ Servlet
โ
HTTP ์์ฒญ์ ๋ฐ์ ๋์ ์ธ ์ฒ๋ฆฌ๋ฅผ ์ํํ๊ณ , HTML ๋๋ JSON ๋ฑ์ ์๋ต์ ์์ฑ
โ
๋ํ์ ์ธ Servlet: DispatcherServlet
๋์ ํ๋ฆ
-
ํด๋ผ์ด์ธํธ ์์ฒญ์ ๋ฐ์ ๋์ ๋ฐ์ดํฐ ์์ฑ
- ๋น์ฆ๋์ค ๋ก์ง, ์ธ๋ถ ์์คํ ๊ณผ ์ฐ๋ ๋ฑ
- ๋์ ์ธ HTML ๋๋ JSON์ ์์ฑํ์ฌ ํด๋ผ์ด์ธํธ์๊ฒ ๋ฐํ
๋ผ์ดํ์ฌ์ดํด ๋ฉ์๋
๐น init()
Servlet์ด ์ฒ์ ์์ฑ๋ ๋ ํ ๋ฒ ์คํ (์ด๊ธฐํ ์์
์ํ)
๐น service()
HTTP ์์ฒญ์ด ๋ค์ด์ฌ ๋๋ง๋ค ์คํ (์์ฒญ ์ฒ๋ฆฌ)
๐น destroy()
Servlet์ด ์ ๊ฑฐ๋ ๋ ํ ๋ฒ ์คํ (์์ ํด์ )
๐ Spring MVC
โ
WAS ๋ด์์ ์๋ธ๋ฆฟ์ ๊ธฐ๋ฐ์ผ๋ก ๋์ํ๋ ์น ํ๋ ์์ํฌ
โ
DispatcherServlet์ด๋ผ๋ ์๋ธ๋ฆฟ์ ๊ธฐ๋ฐ์ผ๋ก ๋์
๐ ์ฐธ๊ณ
https://docs.spring.io/spring-framework/reference/web/webmvc.html https://www.youtube.com/watch?v=F_vBAbjj4Pk